package com.test.factory.simplefactory;

//具体的工厂
public class CpuFactory {

    /**
     * 返回值是产品的抽象类型
     * 简单工厂模式：创建哪种具体产品类型代码在工厂内部，如果需要新增具体产品，需要修改工厂类方法
     * 例如需要增加C的cpu，需要修改下面的工厂方法，不符合开-闭原则
     * @return
     */
    public static Cpu creatCpu(Class classType){
        if(classType.getName().equals(ACpu.class.getName())){
            return new ACpu();
        }else if(classType.getName().equals(BCpu.class.getName())){
            return new BCpu();
        }
        return null;
    }
}
